package com.harmony.pilot.agent.tools;

import com.harmony.pilot.agent.model.ConversationContext;
import com.harmony.pilot.agent.model.Intent;
import com.harmony.pilot.agent.model.ToolRequest;
import com.harmony.pilot.agent.model.ToolResult;

public interface AgentTool {
    /**
     * 工具名称
     */
    String getName();
    
    /**
     * 工具描述
     */
    String getDescription();
    
    /**
     * 工具参数定义（JSON Schema格式）
     */
    String getParametersSchema();
    
    /**
     * 判断是否可以处理该意图
     */
    boolean canHandle(Intent intent, ConversationContext context);
    
    /**
     * 计算相关性分数（0-1）
     */
    double getRelevanceScore(Intent intent, ConversationContext context);
    
    /**
     * 执行工具
     */
    ToolResult execute(ToolRequest request);
}

